package cn.melonlib.apis.support.annos;


import cn.melonlib.apis.support.enums.ApiRequestActionType;
import cn.melonlib.cores.aop.enums.AccessTokenType;

import java.lang.annotation.*;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ApiRequest {

    /**
     * 请求接口名称，如果是rest则是url，如果是graphql则是函数名称
     * @return
     */
    String name() default "";

    Class<?> resultType() default Object.class;

    /**
     * 请求接口认证方式
     * @return
     */
    AccessTokenType accessTokenType() default AccessTokenType.SYSTEM;

    /**
     * 请求动作
     * @return
     */
    ApiRequestActionType apiRequestAction() default ApiRequestActionType.QUERY;



}
